China flag Program Usage <<
Previous Next >> w11
Korea flag Program Usage
// 繪製長方形
int rectangleX = 330; // 長方形左上角的 X 座標
int rectangleY = 90; // 長方形左上角的 Y 座標
int rectangleWidth = 140; // 長方形的寬度
int rectangleHeight = 170;// 長方形的高度
// 設定線的寬度
int lineWidth = 23;
// 繪製線段
gdImageSetThickness(im, lineWidth);
gdImageRectangle(im, rectangleX, rectangleY, rectangleX + rectangleWidth, rectangleY + rectangleHeight, black);
// 繪製斜線段
gdImageSetThickness(im, lineWidth);
gdImageLine(im, rectangleX, rectangleY, rectangleX + rectangleWidth, rectangleY + rectangleHeight, black);
// 繪製斜線段
gdImageSetThickness(im, lineWidth);
gdImageLine(im, rectangleX - 35, rectangleY - 10, rectangleX + rectangleWidth - 35, rectangleY + rectangleHeight - 10, black);
// 繪製斜線段
gdImageSetThickness(im, lineWidth);
gdImageLine(im, rectangleX - 70, rectangleY - 20, rectangleX + rectangleWidth - 70, rectangleY + rectangleHeight - 20, black);
這裡使用了 gdImageRectangle 函數來繪製一個填充的長方形。函數的原型如下:
- void gdImageRectangle(gdImagePtr im, int x1, int y1, int x2, int y2, int color);
- im 是一個指向 gdImage 結構的指針,表示畫布。
- (x1, y1) 是長方形左上角的座標。
- (x2, y2) 是長方形右下角的座標。
- color 是用來填充長方形的顏色。
- 在這裡,我們設定了 rectangleX 和 rectangleY 作為長方形的左上角座標,rectangleWidth 和 rectangleHeight 分別是長方形的寬度和高度。我們使用 gdImageRectangle 函數畫出了一個填充的長方形。接著使用 gdImageLine 函數分別繪製了兩條斜線段,使其看起來像是旗幟。如果需要調整長方形的位置或大小,可以修改相應的變數值。
gdImageLine(im, rightTopX + 70, rightTopY - 20, rightTopX, rightTopY, black);
- im: 表示目標圖像,也就是你要在其上進行繪製的圖像。
- rightTopX + 70, rightTopY - 20: 是線段的起點座標。rightTopX 和 rightTopY 是矩形右上角的座標,這裡將起點座標向右移動 70 單位,向上移動 20 單位。
- rightTopX, rightTopY: 是線段的終點座標,即矩形的右上角座標。
- black: 是線段的顏色。在 GD 庫中,顏色是使用 gdImageColorAllocate 函數來分配的。在這裡,black 表示事先分配好的黑色。
- 因此,這行程式碼的作用是在圖像上從右上角的某點 (rightTopX, rightTopY) 開始,畫一條斜向左上方的線段,並且這條線段的長度是 70 單位(水平方向),20 單位(垂直方向)。
FILE *outputFile = fopen("./../images/korea_flag.png", "wb");
if (outputFile == NULL) {
fprintf(stderr, "Error opening the output file.\n");
return 1;
}
gdImagePngEx(im, outputFile, 9);
fclose(outputFile);
gdImageDestroy(im);
這個程式使用GD圖形庫生成了一個帶有特定幾何圖案的圖像,並將其保存為PNG檔案。
gdImagePngEx(im, outputFile, 9);
- gdImagePngEx 函數是 GD 圖形庫中的一個函數,用來將圖像保存為 PNG 檔案。
- im 是指向 GD 圖片結構的指標,代表要保存的圖像。
- outputFile 是一個指向已打開的檔案的指標,代表 PNG 檔案的輸出位置。
- 9 是壓縮等級,範圍從 0 到 9,數字越大表示壓縮程度越高。在這裡,設置為 9 表示最高壓縮。
fclose(outputFile);
- fclose 函數用於關閉已打開的檔案。在這裡,它將 outputFile 這個檔案指標所代表的檔案關閉,確保檔案資源被正確釋放。
gdImageDestroy(im)
- gdImageDestroy 函數用於釋放 GD 圖片結構的記憶體。在這裡,它釋放了 im 指向的 GD 圖片結構所佔用的記憶體。這是為了避免內存洩漏,確保在程式執行完畢後釋放相應的資源。
China flag Program Usage <<
Previous Next >> w11